package com.ruoyi.project.vo.A05Project;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.project.domain.A05Project;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * @author Administrator
 */
public class SelectA05ProjectListRequest  extends A05Project{
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date beginApplicationDate;
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endApplicationDate;
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date beginSigningDate;
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endSigningDate;
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date beginBidOpeningDate;
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endBidOpeningDate;
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date beginReviewerDate;
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endReviewerDate;
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date beginAcceptanceDate;
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endAcceptanceDate;

    // Getter and Setter methods
    public Date getBeginApplicationDate() {
        return beginApplicationDate;
    }

    public void setBeginApplicationDate(Date beginApplicationDate) {
        this.beginApplicationDate = beginApplicationDate;
    }

    public Date getEndApplicationDate() {
        return endApplicationDate;
    }

    public void setEndApplicationDate(Date endApplicationDate) {
        this.endApplicationDate = endApplicationDate;
    }

    public Date getBeginSigningDate() {
        return beginSigningDate;
    }

    public void setBeginSigningDate(Date beginSigningDate) {
        this.beginSigningDate = beginSigningDate;
    }

    public Date getEndSigningDate() {
        return endSigningDate;
    }

    public void setEndSigningDate(Date endSigningDate) {
        this.endSigningDate = endSigningDate;
    }

    public Date getBeginBidOpeningDate() {
        return beginBidOpeningDate;
    }

    public void setBeginBidOpeningDate(Date beginBidOpeningDate) {
        this.beginBidOpeningDate = beginBidOpeningDate;
    }

    public Date getEndBidOpeningDate() {
        return endBidOpeningDate;
    }

    public void setEndBidOpeningDate(Date endBidOpeningDate) {
        this.endBidOpeningDate = endBidOpeningDate;
    }

    public Date getBeginReviewerDate() {
        return beginReviewerDate;
    }

    public void setBeginReviewerDate(Date beginReviewerDate) {
        this.beginReviewerDate = beginReviewerDate;
    }

    public Date getEndReviewerDate() {
        return endReviewerDate;
    }

    public void setEndReviewerDate(Date endReviewerDate) {
        this.endReviewerDate = endReviewerDate;
    }

    public Date getBeginAcceptanceDate() {
        return beginAcceptanceDate;
    }

    public void setBeginAcceptanceDate(Date beginAcceptanceDate) {
        this.beginAcceptanceDate = beginAcceptanceDate;
    }

    public Date getEndAcceptanceDate() {
        return endAcceptanceDate;
    }

    public void setEndAcceptanceDate(Date endAcceptanceDate) {
        this.endAcceptanceDate = endAcceptanceDate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("beginApplicationDate", getBeginApplicationDate())
                .append("endApplicationDate", getEndApplicationDate())
                .append("beginSigningDate", getBeginSigningDate())
                .append("endSigningDate", getEndSigningDate())
                .append("beginBidOpeningDate", getBeginBidOpeningDate())
                .append("endBidOpeningDate", getEndBidOpeningDate())
                .append("beginReviewerDate", getBeginReviewerDate())
                .append("endReviewerDate", getEndReviewerDate())
                .append("beginAcceptanceDate", getBeginAcceptanceDate())
                .append("endAcceptanceDate", getEndAcceptanceDate())
                .append("projectId", getProjectId())
                .append("projectNumber", getProjectNumber())
                .append("projectName", getProjectName())
                .append("customerName", getCustomerName())
                .append("projectStatus", getProjectStatus())
                .append("projectLeader", getProjectLeader())
                .append("estimatedAmount", getEstimatedAmount())
                .append("applicationDate", getApplicationDate())

//                .append("reviewer", getReviewer())
//                .append("reviewerDate", getReviewerDate())
                .append("tenderInviter", getTenderInviter())
                .append("finalQuotation", getFinalQuotation())
                .append("biddingResult", getBiddingResult())
                .append("bidOpeningDate", getBidOpeningDate())
                .append("finalWinningBidder", getFinalWinningBidder())
                .append("contractCode", getContractCode())
                .append("contractName", getContractName())
                .append("contractAmount", getContractAmount())
                .append("signingDate", getSigningDate())
                .append("paymentAmount", getPaymentAmount())
                .append("expenseAmount", getExpenseAmount())
                .append("settlementAmount", getSettlementAmount())
                .append("acceptanceResult", getAcceptanceResult())
                .append("acceptanceDate", getAcceptanceDate())
                .append("fileOne", getFileOne())

                .append("fileTow", getFileTow())
                .append("fileThree", getFileThree())
                .append("projectSummary", getProjectSummary())
                .append("fileFour", getFileFour())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .toString();
    }
}
